package cloud.servlets;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import cloud.beans.Review;
import cloud.forms.ReviewForm;

public class CreateReview extends HttpServlet {

	/**********************************************************************************
	*************************************ATTRIBUTS*************************************
	**********************************************************************************/

	/**
	 * la page à afficher.
	 */
	private static String VUE = "/WEB-INF/view/addReview.jsp";
	
	/**
	 * Permet à la VUE d'avoir accès à l'ensemble des caractéristiques de l'objet Utilisateur
	 */
	public static final String ATT_REVIEW = "person";
	
	/**
	 * Permet à la VUE d'avoir accès à l'ensemble des caractéristiques de l'objet InscriptionForm
	 */
	public static final String ATT_FORM = "form";

	
	/**********************************************************************************
	*************************************METHODES**************************************
	**********************************************************************************/

	/**
	 * Affichage de la page.
	 */
	public void doGet( HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException{
		
		request.setAttribute("anime_id", request.getParameter("anime_id"));

		/* Affichage de la page d'inscription */
		this.getServletContext().getRequestDispatcher( VUE ).forward( request, response );
	}

	
	/**
	 * Traitement de la page.
	 */
	public void doPost( HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException{

		/* Preparation de l'objet formulaire */ 
		ReviewForm form = new ReviewForm();
		
		/* Appel au traitement et a la validation de la requete, et recuperation du bean en resultant */
		Review review = form.createReview( request );

		/* Stockage du formulaire et du bean dans l'objet request*/
		request.setAttribute( ATT_FORM, form );
		request.setAttribute( ATT_REVIEW, review );
		
		/* Affichage de la page d'inscription */
		this.getServletContext().getRequestDispatcher( VUE ).forward( request, response );
	}

}